Scheduling Transient Overload with the TAFT Scheduler
نویسنده
چکیده
Nearly all known real-time scheduling approaches rely on the knowledge of Worst Case Execution Times (WCETs) for all tasks of the system. This is a severe restriction, as with today’s complex systems it becomes increasingly more expensive to determine WCET by applying analytical methods and the computed results often turn out to be a very pessimistic upper bound for the observed execution time. Moreover, in many complex real-time applications that consist of heterogeneous components it is virtually impossible to compute WCETs at all. Also, more and more research is undertaken to enable real-time systems to cope at least with transient overload [Ber01, Ric01]. Transient overload occurs, whenever the system needs more computing resource than available in order to be able to complete all tasks before their deadline. With the classic concept of WCETs, transient overload can be avoided by an appropriate acceptance test that the scheduler uses to check schedulabilty before a task set is admitted to execution. However, even in the world of hard real-time systems with known WCETs it has turned out, that sometimes the overall load imposed by the environment can be higher that expected (either because of wrong design assumptions or dynamic changes in the system or its environment). If this happens, it is unacceptable for a safety-critical system to fail completely. Instead some kind of graceful degradation is desirable, where the system tries to ensure the timely execution of at least the most important tasks. In both cases, unknown WCETs and transient overload, the assumption that all parameters of a system are known apriori does not hold any more. This lead us to the idea of using estimated execution times that are based on statistics and system monitoring instead of fixed WCETs. However, this also means that these estimated execution times can turn out to be wrong for some (longer-lasting) task instances and a scheduler that has based its decisions on these wrong assumptions has to deal with this situation. One approach to achieve this is to trade optimal timeliness for functionality, a well-known strategy in fault tolerance. A timing fault occurs whenever the actual execution time of a task is greater than expected, either caused by a wrong timing estimate or by transient overload. The TAFT (Time-Aware Fault-Tolerant) scheduling [Net01] is able to handle these kinds of timing faults in a way such that deadlines are still met. This presentation first sketches TAFT scheduling. Then, it discusses a scheduling scheme and an execution environment that makes use of a combination of Earliest Deadline scheduling strategies to implement TAFT. This scheme allows for a simple acceptance test and achieves a small scheduling overhead at run-time. Finally, simulation results are presented that show the achieved real-time behavior with an increased acceptance rate, a higher throughput, and a graceful degradation in transient overload situations compared to standard schedulers.
منابع مشابه
Controlling Real-Time Tasks Schedule Using the Value Parameter
Modern real-time applications are very dynamic and cannot cope with using worst-case workload. Therefore scheduling algorithms able to deal with overload situations are required. In this context the Value-Based Scheduling theory has become useful to add flexibility to such systems. This paper presents a comparative study among different real-time schedulers during overload, including traditiona...
متن کاملReal-Time Scheduling of Sensor-Based Control Systems
Many sensor-based control systems are dynamically changing, and thus require a flexible scheduler. The rate monotonic (RM) real-time scheduling algorithm does not support such dynamic systems very well. On the other hand, with earliest-deadline-first (EDF) and minimum-laxity-first (MLF) dynamic scheduling algorithms, a transient overload in the system may cause a critical task to fail, which is...
متن کاملUsing a flexible real-time scheduling strategy in a distributed embedded application
The increasing complexity of current real-time applications demands systems to make good use of the available computational resources. Guaranteeing timing behavior using traditional real-time scheduling policies is turning to be unfeasible, as these policies are based in pessimistic worst-case assumptions that preallocate resources even though they will be rarely used. The Time-Aware Fault-Tole...
متن کاملJava Garbage Collection Scheduling in Utility Accrual Scheduling Environments
Convenience, reliability, and effectiveness of automatic memory management have long been established in modern systems and programming languages such as Java. The timeliness requirements of real-time systems, however, impose specific demands on the operational parameters of the garbage collector. The memory requirements of real-time tasks must be accommodated with a predictable impact on the t...
متن کاملRobust Scheduling in Team-Robotics
9 Abstract 10 Mobile robots interact with a dynamically changing, physical environment. All tasks controlling such interactions must be per-11 formed reliably and in real-time. Information from the local sensors often is incomplete or inconsistent. Distributed sensor fusion is 12 a technique that enables a team to get a more complete view of the world with a better quality of the provided infor...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2002